OPC UA für Laufzeitsystem in Betrieb nehmen
Diese Kurzanleitung beschreibt, wie Sie →OPC UA für ein →Laufzeitsystem in Betrieb nehmen und mit Hilfe des freien Hilfswerkzeug UaExpert die aktuellen Werte von Variablen einer Neuron Power Engineer-Anwendung beobachten.
OPC UA wird für diese Zielsysteme unterstützt: |
Kontaktieren Sie Neuron, falls Sie OPC UA für Ihr Zielsystem verwenden wollen. |
Befolgen Sie die Anleitungen dieser Kurzanleitung in der angegebenen Reihenfolge.
In diesem Artikel: |
---|
Laufzeitsystem installieren und lizenzieren
-
Installieren Sie das Laufzeitsystem wie unter "Installieren" für das entsprechende Zielsystem beschrieben. Verwenden Sie unbedingt eine Neuron RTS max-Version ≥ V5.1.0.
-
Installieren Sie eine Lizenz für das Laufzeitsystem, wie unter "Lizenz anfordern und installieren" für das entsprechende Zielsystem beschrieben ist.
Laufzeitsystem konfigurieren
-
Kontrollieren Sie, dass das Systemservice OPC UA standardmäßig geladen wird.
-
Wechseln Sie in das Unterverzeichnis
PLC
des Laufzeitsystem-Installationsverzeichnisses. -
Öffnen Sie die Datei
RTSIO.cfg
in einem Texteditor, suchen Sie die folgende Zeile:Benötigte Zeile LoadLibrary RTSS_OPCUA
-
Falls diese Zeile nicht vorhanden ist, tragen Sie sie ein und speichern Sie die geänderte Datei
RTSIO.cfg
.
-
-
Definieren Sie den verwendeten OPC-UA-Port.
-
Wechseln Sie in das Unterverzeichnis
bin
des Laufzeitsystem-Installationsverzeichnisses. -
Öffnen Sie die Datei
ServerConfig.xml
in einem Texteditor, suchen Sie die folgende Zeile:Anzupassende Zeile <UaEndpoint>
...
<Url>opc.tcp://0.0.0.0:48010</Url>
-
Überschreiben Sie den vorgegeben Port
48010
durch den verwendeten Port. -
Speichern Sie die geänderte Datei
ServerConfig.xml
.
-
-
Bei Bedarf, falls Sie den Aufbau des OPC-UA-Adressraums gezielter steuern wollen: Definieren Sie die zu inkludierenden Elemente (wie z.B. Programminstanzen, Funktionsbaustein-Instanzen, Variablen oder Strukturelemente).
-
Weiterhin im Unterverzeichnis
bin
des Laufzeitsystem-Installationsverzeichnisses: Erstellen Sie die DateiLogicalsOpcUaWhitelist
in einem Texteditor (bearbeiten Sie diese, falls die Datei bereits existiert). -
Für jedes zu inkludierende Element tragen Sie den Instanzpfad ein. Der Instanzpfad muss in Großbuchstaben angegeben werden. Das Element und seine Unterelemente (z.B. Funktionsbaustein-Instanzen, Variablen) werden dadurch dem OPC-UA-Adressraum hinzugefügt. Sonderfall: Für globale Variablen müssen Sie das Schlüsselwort
VAR_GLOBAL
definieren. Falls Sie nur spezielle globale Variablen dem OPC-UA-Adressraum hinzufügen wollen, geben SieVAR_GLOBAL.name-of-global-variable
an. Diese Einträge werden für eine Neuron RTS max-Version 5.8.0 (und nachfolgende Versionen) unterstützt. Falls Sie eine frühere Neuron RTS max-Version verwenden, werden nur die Namen von Programminstanzen und der EintragVAR_GLOBAL
unterstützt. Das korrekte Verhalten der anderen Einträge ist bei früheren Neuron RTS max-Versionen nicht gewährleistet.Beispiel
Erläuterung
PROG1
Alle Variablen von
Prog1
und alle untergeordneten Elemente (wie z.B. Variablen von aufgerufenen Funktionsbaustein-Instanzen) werden hinzugefügt.PROG2.STRUCTVAR1
Alle Elemente von
Prog2.StructVar1
werden hinzugefügt. Vorhandene Unterelemente werden ebenfalls hinzugefügt.PROG2.MYFB1
Alle Variablen von der Funktionsbaustein-Instanz
myFB1
, die vonProg2
aufgerufen wird, werden hinzugefügt. Vorhandene Unterelemente werden ebenfalls hinzugefügt.PROG3.ENO
Von
PROG3
wird nur derENO
hinzugefügt.VAR_GLOBAL
Alle globale Variablen werden hinzugefügt.
VAR_GLOBAL.GV1
Die globale Variable
Gv1
wird hinzugefügt. Vorhandene Unterelemente werden ebenfalls hinzugefügt. -
Speichern Sie die Datei
LogicalsOpcUaWhitelist
.
-
-
Bei Bedarf: Definieren Sie die Einstellungen für →ARRAY-Elemente und →Referenzen zur Anwendung auf den OPC-UA-Client.
-
Weiterhin im Unterverzeichnis
bin
des Laufzeitsystem-Installationsverzeichnisses: Öffnen Sie die DateiLogicalsOpcUaSettings.xml
in einem Texteditor (erstellen Sie diese, falls die Datei noch nicht existiert). -
In der Datei korrigieren Sie die Werte für die Elemente laut Ihren Anforderungen.
Standardeinträge <?xml version="1.0" encoding="utf-8"?>
<Properties>
<EnableBaseTypeArrayElements>false</EnableBaseTypeArrayElements>
<EnableWriteAccessToReferencedVariables>true</EnableWriteAccessToReferencedVariables>
<MaximumReferenceDepth>1</MaximumReferenceDepth>
</Properties>
Erläuterung der Elemente in der Datei
LogicalsOpcUaSettings.xml
:-
<EnableBaseTypeArrayElements>...</EnableBaseTypeArrayElements>
: definiert die Anzeige für Array-Elemente, die auf Basis eines elementaren Datentyp deklariert sind-
Beim Wert
false
(= Standardeinstellung) wird für jedes Array-Element eine eigene OPC-UA-Variable erstellt. BeiVar1: ARRAY[1..10] OF INT
wird also nur eine VariableVar1
vom TypInt16 Array
Array erstellt. Im OPC-UA-Client wird nur eine Variable angezeigt. -
Beim Wert
true
werden zusätzliche OPC-UA-Variablen erstellt. BeiVar1: ARRAY[1..10] OF INT
werden zusätzlich 10 Variable[0]
bis[10]
vom TypInt16
erstellt. In Folge können auch einzelne Array-Elemente im OPC-UA-Client gelesen und/oder darauf geschrieben werden.
-
-
<EnableWriteAccessToReferencedVariables>...</EnableWriteAccessToReferencedVariables>
: aktiviert oder deaktiviert das Schreibrecht auf Variablen, die überREF_TO
referenziert sind.-
Beim Wert
true
(= Standardeinstellung) ist das Schreibrecht aktiviert. BeiVar1 : INT
undVar1Ref : REF_TO INT := REF(Var1)
kann der Wert vonVar1
durchVar1Ref^
im OPC-UA-Client verändert werden. -
Beim Wert
false
ist das Schreibrecht deaktiviert.
-
-
<MaximumReferenceDepth>...</MaximumReferenceDepth>
: definiert die maximale Anzeigetiefe von selbstreferenzierende Strukturdatentypen (also von Strukturen, bei dem ein Element durch REF_TO auf den eigenen Datentyp verweist)
Beim Wert1
(= Standardeinstellung) wird nur die 1. Ebene vonREF_TO
-Verknüpfungen im OPC-UA-Client angezeigt, beim Wert5
wird bis zur 5. Ebene angezeigt Sonderfall: Beim Wert0
werden referenzierte Variable gar nicht im OPC-UA-Client angezeigt.
-
-
Speichern Sie die Datei
LogicalsOpcUaSettings.xml
.
-
Laufzeitsystem starten
Starten Sie das Laufzeitsystem, wie unter "Entwicklungsumgebung und Laufzeitumgebung starten" für das entsprechende Zielsystem beschrieben.
Neuron Power Engineer-Anwendung auf SPS laden
Laden Sie die Anwendung auf das Zielsystem. Details: Siehe "Anwendung erstellen und auf SPS laden".
Nach dem Laden der Neuron Power Engineer-Anwendung auf die SPS werden in der Konsole des →Laufzeitsystems und/oder in der Sicht SPS-Logging von Neuron Power Engineer Meldungen angezeigt. Eine der Meldungen gibt die Anzahl der gefundenen und ignorierten Variablen an.
UaExpert für den Zugriff auf das OPC-UA-Service verwenden
Für den Zugriff auf das OPC-UA-Service benötigen Sie einen OPC-UA-Client. Neuron empfiehlt das kostenfreie Hilfstools UaExpert von Unified Automation. Siehe https://www.unified-automation.com/products/development-tools/uaexpert.html für Details (in Englisch) und Download.
Hier eine Kurzanleitung zur entsprechenden Verwendung von UaExpert:
-
Laden Sie UaExpert herunter und installieren Sie UaExpert.
Der OPC-UA-Port auf dem Zielsystem muss erreichbar sein (z.B. muss der Firewall-Port offen sein). -
Starten Sie UaExpert.
-
Verbinden Sie sich zum Zielsystem (d.h., zur SPS):
-
Drücken Sie die Schaltfläche (Add Server) in der Symbolleiste.
-
Im Dialog Add Server klappen Sie Custom Discovery auf und doppelklicken Sie auf <Double click to Add Server...>. Geben Sie die URL-Adresse der SPs im Dialog Enter URL ein und drücken Sie OK.
Beispiel für URL-Adresse:opc.tcp://192.168.1.2:48010
(bei der IP-Adresse192.168.1.2
der SPS und dem Port48100
für OPC UA) -
Im Dialog Add Server klappen Sie den neuen Eintrag auf, bis Sie die Untereinträge von LogicalsOpcUa... sehen. Selektieren Sie None - None und drücken Sie OK im Dialog.
-
-
Wählen Sie die zu beobachten Variablen der Neuron Power Engineer-Anwendung aus.
-
Im linken, mittleren Bereich Address Space von UaExpert wählen Sie einen Variablenpfad aus:
Root
,Objects
,LogicalsPlc
,Programs
,Program-name
,Variable-name
-
Ziehen Sie die Variable in den Bereich Data Access View von UaExpert. Dort wird standarmäßig der aktuelle Wert angezeigt.
Beispiel für die Anzeige in UaExpert:
-
Der OPC-UA-Client zeigt die Variablen mit den folgenden Datentypen so an:
Datentyp der Variable |
Anzeige im OPC-UA-Client |
---|---|
|
|
|
|
|
|
|
|